JNA provides Java programs easy access to native shared libraries
without writing anything but Java code -- no JNI or native code is
required. This functionality is comparable to Windows' Platform/Invoke
and Python's ctypes. Access is dynamic at runtime without code
generation.

JNA allows you to call directly into native functions using natural Java
method invocation. The Java call looks just like it does in native code.
Most calls require no special handling or configuration; no boilerplate
or generated code is required.
